package com.ctsi.ssdc.service;


import com.ctsi.ssdc.model.PageResult;
import org.springframework.data.domain.Pageable;

import com.ctsi.ssdc.domain.LitemallGroupon;
import com.ctsi.ssdc.domain.LitemallGrouponExample;
import com.ctsi.ssdc.service.StrengthenBaseService;

import java.util.List;

/**
 * Service Interface for managing LitemallGroupon.
 *
 * @author ctsi-biyi-generator
 *
 */
public interface LitemallGrouponService 
	extends StrengthenBaseService<LitemallGroupon, Integer, LitemallGrouponExample>{


    /**
    * GET  /litemallGroupons : get the litemallGroupons firstStringBaseColumn.
    */
    PageResult<LitemallGroupon> findFirstStringColumn(String shareUrl ,Pageable pageable);

    LitemallGroupon queryById(Integer userId, Integer grouponId);
    LitemallGroupon queryById(Integer id);

    List<LitemallGroupon> queryJoinRecord(Integer linkGrouponId);

    List<LitemallGroupon> queryMyGroupon(Integer userId);

    List<LitemallGroupon> queryMyJoinGroupon(Integer userId);

    int countGroupon(Integer linkGrouponId);

    LitemallGroupon queryByOrderId(Integer id);

    boolean hasJoin(Integer userId, Integer grouponLinkId);


    int createGroupon(LitemallGroupon groupon);


    int updateById(LitemallGroupon groupon);
}
